Warning: this is an htmlized version!
The original is here, and
the conversion rules are here.
-- This file:
--   http://anggtwu.net/LUA/WhatsApp1.lua.html
--   http://anggtwu.net/LUA/WhatsApp1.lua
--          (find-angg "LUA/WhatsApp1.lua")
-- Author: Eduardo Ochs <eduardoochs@gmail.com>
--
-- (defun e () (interactive) (find-angg "LUA/WhatsApp1.lua"))
--
-- «.bigstr_marina»	(to "bigstr_marina")
-- «.bigstr_revisao»	(to "bigstr_revisao")
-- «.WhatsAppMsg»	(to "WhatsAppMsg")
-- «.WhatsAppMsg-tests»	(to "WhatsAppMsg-tests")
-- «.WhatsApp»		(to "WhatsApp")
-- «.WhatsApp-tests»	(to "WhatsApp-tests")

-- «bigstr_marina»  (to ".bigstr_marina")
-- (find-telegachat "@eduardoochs#241471" "[15/12/2023, 08:04]")
-- (find-telegachat "@eduardoochs#241472" "[06/08, 15:28]")
-- (find-telegachat "@eduardoochs#241473")
-- (find-telegachat "@eduardoochs#241474")
-- (find-telegachat "@eduardoochs#241475")
-- (find-telegachat "@eduardoochs#241476")
-- (find-telegachat "@eduardoochs#241477")
-- (find-telegachat "@eduardoochs#241478")
-- (find-telegachat "@eduardoochs#241479")
-- (find-telegachat "@eduardoochs#241480")
-- (find-telegachat "@eduardoochs#241481")
-- (find-telegachat "@eduardoochs#241482")
-- (find-telegachat "@eduardoochs#241483")
bigstr_marina = [==[
]==]


-- «bigstr_revisao»  (to ".bigstr_revisao")
-- (find-TH "2024-rev")
-- Revisão da prova de C2
-- (find-telegachat  "@eduardoochs#241578")
-- (find-telegachatm "@eduardoochs#241578")
-- (find-telegachatm "@eduardoochs#241579")

bigstr_revisao = [==[
[21/08, 11:11] Eduardo Ochs: Oi!
[21/08, 11:12] Eduardo Ochs: Vou mandar umas coisas por aqui...
[21/08, 11:15] Eduardo Ochs: Nas primeiras aulas desse semestre eu passei o "Termo de responsabilidade e compromisso" abaixo, que explicava como ia ser o curso:
[21/08, 11:16] Eduardo Ochs: 2024-1-C2-C3-termo.pdf
[21/08, 11:19] Eduardo Ochs: Na terceira aula - 20/março - eu vi que os alunos não faziam a menor idéia de como desenhar o gráfico de uma função definida por casos. Eu passei uma atividade pra eles fazerem em grupos pra eu ir descobrindo as dúvidas deles e dar dicas, mas eles demoraram muito mais do que eu imaginei que demorariam...
[21/08, 11:22] Eduardo Ochs: E na aula 9 - em 3/abril - eu pedi pros alunos fazerem uma espécie de teste de nivelamento, porque eles não sabiam aplicar fórmulas, não faziam a menor idéia de como provar fórmulas novas e partir de fórmulas que a gente já conhece, e eles estavam errando em todas as aplicações da regras da cadeia.
[21/08, 11:23] Eduardo Ochs: O PDF abaixo tem o enunciado e dois jeitos de resolver a questão do teste. Eu resolvi LaTeXar isso muito bem porque eu vi que eu ia precisar me referir a essas figuras centenas de vezes depois.
[21/08, 11:25] Eduardo Ochs: 2024-1-C2-teste-niv.pdf
[21/08, 11:28] Eduardo Ochs: Ou seja, estamos no quinto semestre depois do fim da quarentena e os alunos continuam chegando em Cálculo 2 sem saberem coisas MUITO básicas. E eu não sei praticamente nada sobre como os outros professores daqui do PURO dão os seus cursos, nem o que eles acham que cada disciplina tem que ensinar, nem como são as provas, nem quais os critérios de correção de vocês, nem o nível de exigência em cada disciplina...
[21/08, 11:33] Eduardo Ochs: Como eu não consigo interagir com os colegas daqui eu tenho tentado interagir com pessoas de outras universidades sempre que possível. O PDF abaixo tem os slides - nada autocontidos - de uma apresentação que eu fiz num encontro sobre didática e cursos de serviço que teve em Teresópolis durante a greve. Eu resolvi mandar isso só por causa dos slides sobre os alunos não saberem aplicar fórmulas e sobre como eu tenho tentado resolver isso, que são os slides 4 até 17.
[21/08, 11:34] Eduardo Ochs: 2024panic-teresopolis.pdf
[21/08, 11:38] Eduardo Ochs: Eu imagino que vocês tenham material que explica como o nível de exigência vai mudando à medida que as matérias vão ficando mais avançadas - e que explica que em C1, GA, MD, etc a gente dá pontos pros alunos quando eles pensaram direito mas escreveram errado, mas nas matérias mais avançadas a gente vai cobrando cada vez mais que eles escrevam tudo direito. Seria bacana se vocês pudessem compartilhar o material de vocês sobre isso comigo - o que eu tenho usado tá aqui:
[21/08, 11:39] Eduardo Ochs: 2024-1-C2-intro.pdf
[21/08, 11:40] Eduardo Ochs: Eu procurei nos termos de responsabilidade e compromisso la' em casa e so' encontrei o da Maria Eduarda Barroso Cunha - nao encontrei nem o do Jhonny Pereira Santana da Silva nem o da Nathalia de Castro Martins...
[21/08, 11:41] Eduardo Ochs: E nao tive tempo de conferir nas listas de presenca se o Jhonny e a Nathalia faltaram as primeiras aulas - imagino que tenha sido isso que aconteceu.
[21/08, 11:43] Eduardo Ochs: Nenhum deles veio no dia do teste de nivelamento - 3/abril. Nao tive tempo de conferir as listas de presenca, mas nao tenho os testes de nivelamento deles.
[21/08, 11:47] Eduardo Ochs: Se o LEACC estiver aberto eu vou deixar la' as provas dos tres alunos e uma versao impressa do PDF com exercicios sobre a operacao [:=], que eu divulguei antes da greve, e que eu insisti muito com eles que se eles treinassem aquilo bastante tudo no curso ficaria facil, e se eles nao treinassem tudo continuaria dificilimo.
[21/08, 11:53] Eduardo Ochs: O gabarito dessa prova que eles fizeram está aqui - e tem link pra ele na página do curso:
[21/08, 11:54] Eduardo Ochs: 2024-1-C2-P1.pdf
[21/08, 11:56] Eduardo Ochs: No semestre passado muita gente colou em Cálculo 2 - as respostas tinham exatamente os mesmos erros em exatamente os mesmos lugares. Aqui vai a P1 de 2023.2, com gabarito:
[21/08, 11:56] Eduardo Ochs: 2023-2-C2-P1.pdf
[21/08, 11:57] Eduardo Ochs: A ultima pagina dela tem uma tabela de "Erros que muitas pessoas cometeram". Eu descontei um ponto por cada erro desses.
[21/08, 12:02] Eduardo Ochs: Na P2 de 2023.2 os "erros que muitas pessoas cometeram" zeravam a questao - e as duas ultimas paginas dessa P2 tem uma explicacao de que erros eu considerei graves e quais nao. Como eu ja' tinha avisado durante o curso, por escrito e em muitos lugares, que as respostas deles nas provas tinham que ser faceis de entender e faceis de revisar, eu nem precisei fazer uma tabela de erros comuns no gabarito da prova...
[21/08, 12:05] Eduardo Ochs: Os "erros que muitas pessoas cometeram" eram tao gritantes, tao faceis de ver, e deveriam ter sido tao faceis de identificar quando eles releram as provas, que eu so' zerei as questoes com esses erros gritantes - e escrevi nas provas coisas como "compare com as provas das pessoas tais e tais". Os alunos viram isso na vista de prova e nao reclamaram.
[21/08, 12:05] Eduardo Ochs: Aqui vai o PDF dessa P2 de 2023.2:
[21/08, 12:07] Eduardo Ochs: 2023-2-C2-P2.pdf
[21/08, 12:08] Eduardo Ochs: Tomara que dê pra gente aproveitar essa situação pra conversar sobre critérios de correção e coisas assim...
[21/08, 12:24] Eduardo Ochs: Ah
[21/08, 12:26] Eduardo Ochs: Eu disse pra esses três alunos - e pra mais um, o Lucas Smith - que se eles quisessem aumentar a nota da questão de integração eles poderia vir numa sexta e fazer uma questão parecida, mas só o Lucas Smith veio...
[21/08, 12:26] Eduardo Ochs: Aqui estão os prints do whatsapp:
[25/08, 02:47] Eduardo Ochs: Gente, por favor não esqueçam de me mandar as notas novas dos alunos pra eu atualizar as tabelas do curso!
[25/08, 22:01] Fabio Gonçalves: Olá Eduardo. Somente amanhã, farei o relatório dos pedidos de revisão de notas. Para que você possa fazer a atualização das tabelas de notas enquanto aguarda os relatórios, seguem as seguintes informações:

1) Johnny Pereira Santana da Silva:
Nota revisada: 3,8 + 0,4 = 4,2

2) Maria Eduada Barroso Cunha:
Nota revisada: 2,9 + 4,0 = 6,9

3) Nathália de Castro Martins:
Nota Revisada: 4,4 + 1,0 = 5,4
[25/08, 22:01] Eduardo Ochs: Ok! Obrigado!
]==]


-- (find-angg "LUA/DeleteComments3.lua" "lpeg-local")
lpeg              = lpeg or require "lpeg" 
local B,C,P,R,S,V = lpeg.B,lpeg.C,lpeg.P,lpeg.R,lpeg.S,lpeg.V
local Cb,Cc,Cf,Cg = lpeg.Cb,lpeg.Cc,lpeg.Cf,lpeg.Cg
local Cp,Cs,Ct    = lpeg.Cp,lpeg.Cs,lpeg.Ct
local Carg,Cmt    = lpeg.Carg,lpeg.Cmt

require "Gram4"   -- (find-angg "LUA/Gram4.lua")
gr,V          = Gram4.new()

V.when        = P"[" * ((S"0123456789 /,:")^1):Cg"when" * P"]"
V.who         = (P"Eduardo Ochs" + P"Fabio Gonçalves"):Cg"who"
V.header      = V.when * " " * V.who * ": "
V.rest        = (1-V.header)^0
V.message     = (V.header * V.rest:Cg"text"):Ct()
V.messages    = (V.message^1):Ct()

whatsapp_pat   = gr:compile("messages")
whatsapp_parse = function (bigstr)
    return whatsapp_pat:match(bigstr)
  end

--[[
* (eepitch-lua51)
* (eepitch-kill)
* (eepitch-lua51)
dofile "WhatsApp1.lua"
= gr:cmp("messages", "[25/08, 22:01] Eduardo Ochs: Ok!")
  msgs = VTable(whatsapp_parse(bigstr_revisao))
= msgs

--]]



-- «WhatsAppMsg»  (to ".WhatsAppMsg")
WhatsAppMsg = Class {
  type    = "WhatsAppMsg",
  __tostring = function (wm) return wm:who1()..": "..wm:text1() end,
  __index = {
    q = function (wm,str)
        return (str:gsub("[%[%]]", {["["]="[<]", ["]"]="[>]"}))
      end,
    who1   = function (wm) return split(wm.who)[1] end,
    text1  = function (wm) return (wm.text:gsub("\n$", "")) end,
    text1q = function (wm) return wm:q(wm:text1()) end,
  },
}

-- «WhatsAppMsg-tests»  (to ".WhatsAppMsg-tests")
--[[
* (eepitch-lua51)
* (eepitch-kill)
* (eepitch-lua51)
dofile "WhatsApp1.lua"
  wm = WhatsAppMsg {text="Aqui vai", when="21/08, 12:05", who="Eduardo Ochs"}
  wm = WhatsAppMsg {text="Aqui v[a]i", when="21/08, 12:05", who="Eduardo Ochs"}
= wm
= wm:text1q()

--]]


-- «WhatsApp»  (to ".WhatsApp")
WhatsApp = Class {
  type   = "WhatsApp",
  from   = function (bigstr)
      local msgs1 = whatsapp_parse(bigstr)
      return WhatsApp(map(WhatsAppMsg, msgs1))
    end,
  __tostring = function (wms) return mapconcat(tostring, wms, "\n") end,
  __index = {
  },
}

-- «WhatsApp-tests»  (to ".WhatsApp-tests")
--[[
* (eepitch-lua51)
* (eepitch-kill)
* (eepitch-lua51)
dofile "WhatsApp1.lua"
wms = WhatsApp.from(bigstr_revisao)
= wms
= wms[1]

--]]








-- Local Variables:
-- coding:  utf-8-unix
-- End: